
const utils = {
  versions: () => {
    const u = navigator.userAgent;
    // let app = navigator.appVersion
    return {
      iphonex: /iphone/gi.test(u) && window.devicePixelRatio && window.devicePixelRatio === 3 && window.screen.width === 375 && window.screen.height === 812,
      isIPhoneXSMax: /iphone/gi.test(u) && window.devicePixelRatio && window.devicePixelRatio === 3 && window.screen.width === 414 && window.screen.height === 896,
      isIPhoneXR: /iphone/gi.test(u) && window.devicePixelRatio && window.devicePixelRatio === 2 && window.screen.width === 414 && window.screen.height === 896,
      trident: u.indexOf('Trident') > -1, // IE内核
      presto: u.indexOf('Presto') > -1, // opera内核
      webKit: u.indexOf('AppleWebKit') > -1, // 苹果、谷歌内核
      gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') === -1, // 火狐内核
      mobile: !!u.match(/AppleWebKit.*Mobile.*/), // 是否为移动终端
      ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), // ios终端
      android: u.indexOf('Android') > -1 || u.indexOf('Adr') > -1, // android终端
      iPhone: u.indexOf('iPhone') > -1, // 是否为iPhone或者QQHD浏览器
      iPad: u.indexOf('iPad') > -1, // 是否iPad
      webApp: u.indexOf('Safari') === -1, // 是否web应该程序，没有头部与底部
      weixin: u.indexOf('MicroMessenger') > -1, // 是否微信 （2015-01-22新增）
      qq: u.match(/\sQQ/i) === ' qq', // 是否QQ
      chrome: u.indexOf('Chrome') > -1, // 是否Chrome
      safari: /Safari/.test(u) && !/Chrome/.test(u), // 是否Safari
    };
  },
  getQueryValue(queryName) {
    const query = decodeURI(window.location.search.substring(1));
    const vars = query.split('&');
    for (let i = 0; i < vars.length; i += 1) {
      const pair = vars[i].split('=');
      if (pair[0] === queryName) { return pair[1]; }
    }
    return null;
  },
  randomString(len) { // 随机字符串
    len = len || 32;
    const chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; /** **默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1*** */
    const maxPos = chars.length;
    let pwd = '';
    for (let i = 0; i < len; i += 1) {
      pwd += chars.charAt(Math.floor(Math.random() * maxPos));
    }
    return pwd;
  },
  simpleDeepCopy(data) {
    return JSON.parse(JSON.stringify(data));
  },
  arryRender(arry, data) { // 枚举转换器
    if (!/[^\u4e00-\u9fa5]/.test(data)) {
      const temp = arry.find((x) => x.label === data);
      if (temp) {
        return temp.value;
      }
      return '-';
    }
    const temp = arry.find((x) => x.value === data);
    if (temp) {
      return temp.label;
    }
    return '-';
  },
  // 手机号脱敏
  maskPhone(phone) {
    if (phone) {
      phone = phone.replace(/\s/g, '');
      return `${phone.substr(0, 3)} **** ${phone.substr(phone.length - 4, 4)}`;
    }
  },
  // 身份证号脱敏
  maskIdcard(idcard) {
    if (idcard) {
      idcard = idcard.replace(/\s/g, '');
      return `${idcard.substr(0, 6)} **************`;
    }
  },
};

export default utils;
